using System;
using System.Collections.Generic;
using ns26;
using ns27;
using Triton.Game.Mono;

namespace Triton.Game.Mapping
{
	[Attribute38("TutorialProgressScreen")]
	public class TutorialProgressScreen : MonoBehaviour
	{
		[Attribute38("TutorialProgressScreen.LessonAsset")]
		public class LessonAsset : MonoClass
		{
			public string m_asset => method_4("m_asset");

			public string m_phoneAsset => method_4("m_phoneAsset");

			public LessonAsset(IntPtr address, string className)
				: base(address, className)
			{
			}

			public LessonAsset(IntPtr address)
				: this(address, "LessonAsset")
			{
			}
		}

		public HeroCoin m_coinPrefab => method_3<HeroCoin>("m_coinPrefab");

		public UberText m_lessonTitle => method_3<UberText>("m_lessonTitle");

		public UberText m_missionProgressTitle => method_3<UberText>("m_missionProgressTitle");

		public GameObject m_currentLessonBone => method_3<GameObject>("m_currentLessonBone");

		public PegUIElement m_exitButton => method_3<PegUIElement>("m_exitButton");

		public UberText m_exitButtonLabel => method_3<UberText>("m_exitButtonLabel");

		public List<HeroCoin> m_heroCoins => method_3<Class271<HeroCoin>>("m_heroCoins")?.method_25();

		public bool m_showProgressSavedMessage => method_2<bool>("m_showProgressSavedMessage");

		public List<ScenarioDbfRecord> m_sortedMissionRecords => method_3<Class271<ScenarioDbfRecord>>("m_sortedMissionRecords")?.method_25();

		public static float START_SCALE_VAL => MonoClass.smethod_6<float>(TritonHs.MainAssemblyPath, "", "TutorialProgressScreen", "START_SCALE_VAL");

		public Vector3 START_SCALE => method_2<Vector3>("START_SCALE");

		public Vector3 FINAL_SCALE => method_2<Vector3>("FINAL_SCALE");

		public Vector3 FINAL_SCALE_OVER_BOX => method_2<Vector3>("FINAL_SCALE_OVER_BOX");

		public Vector3 HERO_COIN_START => method_2<Vector3>("HERO_COIN_START");

		public static float HERO_SPACING => MonoClass.smethod_6<float>(TritonHs.MainAssemblyPath, "", "TutorialProgressScreen", "HERO_SPACING");

		public bool IS_TESTING => method_2<bool>("IS_TESTING");

		public TutorialProgressScreen(IntPtr address, string className)
			: base(address, className)
		{
		}

		public TutorialProgressScreen(IntPtr address)
			: this(address, "TutorialProgressScreen")
		{
		}

		public static TutorialProgressScreen Get()
		{
			return MonoClass.smethod_15<TutorialProgressScreen>(TritonHs.MainAssemblyPath, "", "TutorialProgressScreen", "Get", Array.Empty<object>());
		}

		public void Awake()
		{
			method_8("Awake");
		}

		public void OnDestroy()
		{
			method_8("OnDestroy");
		}

		public void StartTutorialProgress()
		{
			method_8("StartTutorialProgress");
		}

		public void InitMissionRecords()
		{
			method_8("InitMissionRecords");
		}

		public void LoadAllTutorialHeroEntities()
		{
			method_8("LoadAllTutorialHeroEntities");
		}

		public void SetupCoins()
		{
			method_8("SetupCoins");
		}

		public void Show()
		{
			method_8("Show");
		}

		public void Hide()
		{
			method_8("Hide");
		}

		public void OnScaleAnimComplete()
		{
			method_8("OnScaleAnimComplete");
		}

		public void OnHideAnimComplete()
		{
			method_8("OnHideAnimComplete");
		}

		public void UpdateProgress()
		{
			method_8("UpdateProgress");
		}

		public void OnTutorialImageLoaded(AssetReference assetRef, GameObject go, object callbackData)
		{
			method_8("OnTutorialImageLoaded", assetRef, go, callbackData);
		}

		public void SetupTutorialImage(GameObject go)
		{
			method_8("SetupTutorialImage", go);
		}

		public void ExitButtonPress(UIEvent e)
		{
			method_8("ExitButtonPress", e);
		}
	}
}
